跳到主要内容

C++ 标准异常

头文件 exception, stdexcept 定义了常用的异常类:

  • exception:所有问题
  • runtime_error:运行问题
  • range_error:结果超出值域范围
  • overflow/underflow_error:上溢或下溢
  • logic_error:逻辑错误
  • domain_error:参数对应的结果值不存在
  • invalid_argument:无效参数
  • length_error:超出类型最大长度的对象
  • out_of_range:超出有效范围的值

对于 exception, bad_alloc, bad_cast 来说只能以默认初始化的方式;其他必须提供字符串。